package com.zhouheng.springbootdesignpattern.templatepattern;

/**
 * 模板方法模式
 * 定义整个业务流程
 *
 * @author 周恒
 * @date 20190401 15:47:01
 * @since v1.0
 */
public abstract class AbstractSort {

    protected abstract void sort(int[] array);

    /**
     * 模板方法一定要加final，不能被子类重写
     */
    public final void showSortResult(int[] array) {
        this.sort(array);
        //打印排序结果
        for (int i : array) {
            System.out.println(i);
        }
    }

}
